Ray Strode [Thu, 12 Apr 2018 18:06:01 +0000 (13:06 -0500)]
xwayland: Don't abort if Xwayland crashes
Right now if Xwayland crashes, we crash, too.
On some level that makes sense, since we're supposed to control the
lifecycle of Xwayland, and by it crashing we've lost that control.
But practically speaking, the knock-on crash adds noise to the logs,
bug trackers, and retrace servers that only makes debugging harder.
And the crash isn't something mutter can "fix", since it's
ultimately from a bug in Xwayland anyway.
This commit makes mutter exit instead of crash if Xwayland goes away
unexpectedly.
Ray Strode [Thu, 12 Apr 2018 18:03:03 +0000 (13:03 -0500)]
xwayland: use g_autoptr for GError in xserver_died
Right now we explicitly g_clear_error any error we find, but that
makes it tricky to return early from the function, which a
subsequent commit will want to to do.
This commit switches GError to use g_autoptr so the error clearing
happens automatically.
Clutter's master clock was jittery because it included errors in cur_tick
such as dispatch delays due to other sources. Dispatch could also occur up
to 1ms early since GSource can only be timed to the millisecond. All of this
could impact the visual smoothness of animations as they are displayed on
the steady interval of the monitor, but spacially moving in less regular
steps derived from the dispatch times.
The simple fix is to ignore any jitter in dispatch timing. Try a little
bit harder to use a precise interval that will better match the display
hardware, and smoother visuals will follow.
https://gitlab.gnome.org/GNOME/mutter/issues/25
Gbp-Pq: Name clutter-Smooth-out-master-clock-to-smooth-visuals.patch
Gtk now is caching the themed cairo surfaces, then as per
commit gtk@e36b629c the surface device scale is used to figure
out the current paint scaling.
Without this when using background-image's for window buttons
the -gtk-scaled icons isn't properly resized.
Fixes #99
Gbp-Pq: Name theme-frames-Use-surface-device-scale-instead-of-cairo_sc.patch
Florian Müllner [Thu, 20 Oct 2016 16:00:04 +0000 (18:00 +0200)]
gtk-shell: Work around non-working startup notifications
GNOME Shell relies on the MetaScreen::startup-sequence-changed signal,
which is tied to (lib)startup-notification and therefore X11. As a result,
when we remove the startup sequence of a wayland client, GNOME Shell will
not be notified about this until startup-notification's timeout is hit.
As a temporary stop-gap, go through XWayland even for wayland clients,
so that the signal is emitted when expected.
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=768531
Applied-upstream: no
Gbp-Pq: Name bgo768531_workaround-startup-notifications.patch
* Add xwayland-use-g_autoptr-for-GError-in-xserver_died.patch,
xwayland-Don-t-abort-if-Xwayland-crashes.patch:
- Cherry picked from upstream, to reduce noise of mutter on crashes
which are actually caused by XWayland (LP: #1748450)